import request from '@/utils/request';

/**
 * 分页查询角色
 */
export async function pageRoles(params) {
  const res = await request.post('/god_roles/getList', params);
  if (res.data.code === 20000) {
    return res.data.data;
  }
  return Promise.reject(new Error(res.data.data));
}

/**
 * 查询角色列表
 */
export async function listRoles(params) {
  const res = await request.post('/god_roles/getList', params);
  if (res.data.code === 20000 && res.data.data) {
    return res.data.data;
  }
  return Promise.reject(new Error(res.data.data));
}

/**
 * 添加角色
 */
export async function addRole(data) {
  const res = await request.post('/god_roles/update', data);
  if (res.data.code === 20000) {
    return res.data.data;
  }
  return Promise.reject(new Error(res.data.data));
}

/**
 * 修改角色
 */
export async function updateRole(data) {
  const res = await request.post('/god_roles/update', data);
  if (res.data.code === 20000) {
    return res.data.data;
  }
  return Promise.reject(new Error(res.data.data));
}

/**
 * 删除角色
 */
export async function removeRole(data) {
  const res = await request.post('/god_roles/del/', data);
  if (res.data.code === 20000) {
    return res.data.data;
  }
  return Promise.reject(new Error(res.data.data));
}

/**
 * 批量删除角色
 */
export async function removeRoles(data) {
  const res = await request.post('/god_roles/del', data);
  if (res.data.code === 20000) {
    return res.data.data;
  }
  return Promise.reject(new Error(res.data.data));
}

/**
 * 获取角色分配的菜单
 */
export async function listRoleMenus(data) {
  const res = await request.post('/god_roles/getRouter', data);
  if (res.data.code === 20000) {
    return res.data.data;
  }
  return Promise.reject(new Error(res.data.data));
}

/**
 * 修改角色菜单
 */
export async function updateRoleMenus(data) {
  const res = await request.post('/god_roles/updateRouter', data);
  if (res.data.code === 20000) {
    return res.data.data;
  }
  return Promise.reject(new Error(res.data.data));
}
